package com.easyj.admin.edu.service;

import java.util.List;
import com.easyj.base.exception.EasyjException;
import com.easyj.base.common.page.Page;
import com.easyj.admin.activiti.vo.SimpleApproveVO;
import com.easyj.admin.db.model.Publish;
import com.easyj.admin.db.model.PublishQO;
import com.easyj.admin.db.model.TaskComment;

public interface PublishService {
	
	public final static String  ProcessDefKey="publish"; //流程定义Key
	public final static String  ApproveTaskKey="publishAprove"; //审批任务定义Key

	public Page<Publish> findPage(PublishQO filter);

   	public List<Publish> findList(PublishQO filter);
		
    public long count(PublishQO filter);

	public Publish findById(Long id);

	public int  apply(Publish entity) throws EasyjException;
	
	public List<TaskComment> findCommentsById(Long entityId);
	
	public void approve(SimpleApproveVO approveVO) throws EasyjException;
	
	public void auditApply(SimpleApproveVO approveVO) throws EasyjException;
	
	public int  updateEntity(Publish entity) throws EasyjException;

	public int  cancel(Long id) throws EasyjException;


}
